package it.unipg.bipod.applicationLogic;

/**
 * Eccezione lanciata da {@link SegretarioApplication} quando si verifica un errore
 * relativo allo stato di un corso.
 * 
 * @author Lorenzo Porzi
 * @see SegretarioApplication
 */
public class StatoCorsoException extends ApplicationException {
	private static final long serialVersionUID = 710624748072341744L;

	private int statoCorso;
	
	/**
	 * Corso già presente nella base di dati
	 */
	public static final int CORSO_PRESENTE = 0;
	
	/**
	 * Corso utilizzato da un certo numero di insegnamenti.
	 */
	public static final int NOME_CORSO_UTILIZZATO = 1;
	
	/**
	 * Crea una StatoCorsoException relativa al tipo di errore specificato.
	 * 
	 * @param statoCorso il tipo di stato del corso che ha generato l'errore.
	 */
	public StatoCorsoException(int statoCorso) {
		super("Corso presente nella base di dati");
		
		this.statoCorso = statoCorso;
	}
	
	/**
	 * Restituisce lo stato del corso che ha generato l'errore.
	 * 
	 * @return uno tra i valori delle costanti statiche di classe.
	 */
	public int getStatoCorso() {
		return statoCorso;
	}
}
